package com.freemalll.system.domain;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.freemalll.common.core.annotation.Excel;
import com.freemalll.common.core.annotation.Excel.ColumnType;
import com.freemalll.common.core.web.domain.AuditEntity;

/**
 * 角色账户关系表 sys_role_account_rel
 * 
 * @author freemalll
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("sys_role_account_rel")
public class SysRoleAccountRel extends AuditEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    @Excel(name = "主键ID", cellType = ColumnType.STRING)
    private String id;

    /** 账户id */
    @TableField("account_id")
    @Excel(name = "账户id")
    @NotBlank(message = "账户id不能为空")
    @Size(min = 0, max = 32, message = "账户id不能超过32个字符")
    private String accountId;

    /** OA系统岗位 */
    @TableField("jobtitle")
    @Excel(name = "OA系统岗位")
    @Size(min = 0, max = 255, message = "OA系统岗位不能超过255个字符")
    private String jobtitle;

    /** 分期系统职位id */
    @TableField("post_id")
    @Excel(name = "分期系统职位id")
    @Size(min = 0, max = 255, message = "分期系统职位id不能超过255个字符")
    private String postId;

    /** 角色id */
    @TableField("role_id")
    @Excel(name = "角色id")
    @NotBlank(message = "角色id不能为空")
    @Size(min = 0, max = 32, message = "角色id不能超过32个字符")
    private String roleId;
}